Release 10.1A: OpenEdge Development:
ADM Reference
calltable.p procedure
External procedure that allows for a single RUN statement to invoke a call using a temp-table that defines the parameter values. The temp-table can be in any of the formats supported by the include file. If a temp-table of type 1 or 2 is used, the parameters to the called object are not type checked. If a temp-table of type 3 or 4 is used, the call must be to a function or an internal procedure in a persistent procedure, and the signature is checked against the internal entries before the call is made. All outputs and return values from the invoked procedure are available through the appropriate rows on the returned temp-table.
Parameters:pcCallName INPUT CHARACTERThe name of an external or internal procedure or function to invoke.
pcTarget INPUT CHARACTERName of a manager procedure, the filename of a relatively or absolutely pathed procedure, or an integer value that evaluates to a procedure handle. If the value of this parameter is
""or?, by default, pcCallName contains the name of a procedure that is to run nonpersistently.The parameter is optional. If nothing is specified, then
""or?is passed.pcTargetFlags INPUT CHARACTERThis parameter can contain modifiers that are used to invoke the persistent procedure. A modifier can be a valid combination of the following:
- P(ersistent) — Indicates that a new instance of the procedure should be instantiated persistently and left running.
- A(DM2) — Indicates that a new instance of an ADM2 procedure should be invoked persistently and the initializeObject internal procedure called to initialize it. The ADM2 procedure is left running after the call is complete.
- S(ingle) — Indicates that a new instance of the procedure should be instantiated if a running version is not found and left running.
- K(ill) — Indicates that if a procedure was instantiated during the call, it should be deleted before control is returned.
The default is to apply the behavior of the S parameter. That is, a persistent procedure is started if it is not found by walking the procedure stack and it is left running after the call is complete.
You can specify any of the P, A, or S modifiers in combination with K to shut down the procedure. For example, PK instructs the caller to instantiate a new instance of the procedure persistently and delete it when it is complete.
This parameter is optional. If nothing is specified, then
""is passed.phCallParmTT INPUT HANDLEHandle to a temp-table that could be either of the temp-tables defined in or a temp-table that was previously created by a call to one of the setupTTFrom functions. The output values from the call are written back into this table after the call has been invoked. If this parameter is not specified and there are parameters to the procedure or function, the parameters have to be specified in the phCallParmTH parameter.
This parameter is optional. If nothing is specified, then
?is passed.phCallParmTH INPUT-OUTPUT TABLE-HANDLESimilar to phCallParmTT except that a TABLE-HANDLE is passed to support AppServer calls. The table is passed as an INPUT-OUTPUT parameter so that the return values can be returned to the client.
This parameter is optional. If nothing is specified, then
Notes:?is passed.
- Once the procedure finishes executing, all temporary handles are deleted and the ttCall record no longer exists for the call. As a result, the Dynamic Call Wrapper has no information about this call so that there are no memory leaks created by calling
callstring.p.- The caller is responsible for cleaning up phCallParmTT and phCallParmTH.
- If phCallParmTT is specified, it is used to determine the parameters to the call. Otherwise phCallParmTH is used. If neither are specified the call is attempted with no parameters.
|
Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |